package com.gwd.task.services;

import com.gwd.task.entity.TestEntity;
import com.gwd.task.model.CodeSubmitRecordDTO;
import com.gwd.task.model.PageUtils;
import com.gwd.task.model.TestDTO;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;

import java.util.List;

/**
 * @author zhiyongming
 * @date 2020/12/24 15:07
 */
public interface TestServer {
    //分页查询
    PageUtils findByPage(TestDTO dto, PageUtils pageUtils);
    //导出excel
    HSSFWorkbook export(TestDTO dto);
    //单个新增
    void save(TestDTO dto, Long userId);
    //上传自测图片
    void self(TestDTO test, Long userId);
    //通过打板批量新增与更新
    void board(List<Long> taskIds, List<Long> eventsIds, List<Long> testIds, Long crId);
    //获取未通过的测试统计
    List<TestDTO> findByUserIdListAndUnClose(List<Long> ids);

    //分配测试任务
    void dispatch(Long testId, Long userId);
    //开发打开测试
    void open(Long testId, Long userId);
    //代码提交
    void submit(Long testId, Long userId, CodeSubmitRecordDTO csrDTO);
    //测试关闭
    TestEntity close(Long testId, Long userId);
    //测试关闭2
    void close2(TestDTO testDTO, Long userId);
    //重新打开
    void reOpen(Long testId, Long userId);
    //拒绝
    void refuse(Long testId, Long userId);
    //待测试
    void reset(Long testId, Long userId);

}
